package InternetCode.Socket.Exa7;

import java.io.*;
import java.net.*;
import java.util.Scanner;

/**
 * 通过套接字发送和接收信息
 */
public class ClientSocketFrame {
    // 声明PrintWriter类对象，用来向服务器写入消息
    private PrintWriter writer;
    // 声明Socket对象
    private Socket socket;

    Scanner scanner;
    
    private void connect() {
        System.out.println("尝试连接......\n"); // 文本域中信息信息
        try {
            // 实例化Socket对象
            socket = new Socket("127.0.0.1", 1978);
            // 创建输出流对象
            writer = new PrintWriter(socket.getOutputStream(), true);
            // 文本域中提示信息
            System.out.println("完成连接。\n");
            while(true){
                scanner=new Scanner(System.in);
                System.out.println("请输入要发送的消息:");
                String text=scanner.nextLine();
                if(text.equals("quit")){
                    socket.shutdownOutput();
                    break;
                }
                writer.println(text);
            }

        } catch (Exception e) {
            e.printStackTrace(); // 输出异常信息
        }
    }

    public static void main(String[] args) { // 主方法
        ClientSocketFrame clien = new ClientSocketFrame();
        clien.connect();
    }
}
